package main

import "fmt"

type Person struct {
	Name string
}

type Country struct {
	Name string
}

type Stringable interface {
	ToString() string
}

func (p Person) ToString() string {
	return "Person = " + p.Name
}

func (c Country) ToString() string {
	return "Country = " + c.Name
}

func PrintStr(s Stringable) {
	fmt.Println(s.ToString())
}

func main() {
	person := Person{Name: "pedro"}
	country := Country{Name: "china"}
	PrintStr(person)
	PrintStr(country)
}
